#ifndef YCMODELTYPE_H
#define YCMODELTYPE_H

#include <QString>

namespace yc {

enum PlatformType { UNKNOWN_PLATFORM_TYPE, DOUYIN_PLATFORM_TYPE, KUAISHOW_PLATFORM_TYPE };

enum UserAgentType { DESKTOP_USER_AGENT_TYPE, ANDROID_USER_AGENT_TYPE };

enum LiveStatus {
    INACTIVE_LIVE_STATUS = 0,
    ACTIVE_LIVE_STATUS = 2,
    END_LIVE_STATUS = 4,
    RECORDING_LIVE_STATUS = 8
};

struct WebScript
{
    int injection_point = 0; // enum QWebEngineScript::InjectionPoint: Deferred(0),
                             // DocumentCreation(1), DocumentReady(2)
    QString source_code;
};

struct LiveWebEntry
{
    int platform = UNKNOWN_PLATFORM_TYPE;
    QString name;
    QString url;
    QString profile_url;
    int ua = DESKTOP_USER_AGENT_TYPE;
    WebScript script;
    int version = 0;
};

} // namespace yc

#endif // YCMODELTYPE_H
